f = open('BMR.TXT','a+')#a+追加数据可读，w+会覆盖旧文件
y_or_n = input('是否退出程序(y/n)?')
while y_or_n != 'y':
    print('请输入以下信息，用空格分割')
    input_str = input('性别 体重(kg) 身高(cm) 年龄:')
    lck = input_str.split(" ")
    try:#程序异常处理
        gender = lck[0]
        weight = float(lck[1])
        height = float(lck[2])
        age = int(lck[3])
        if gender == '男':
            bmr = (13.7 * weight) + (5.0 * height) - (6.8 * age) + 66
        elif gender == '女':
            bmr = (9.6 * weight) + (1.8 * height) - (4.7 * age) + 655
        else:
            bmr = -1#用此区分性别
        if bmr != -1:
            info = '您的性别:{},体重:{}kg，身高：{}cm，年龄：{}岁\n'.format(gender,weight,height,age)
            fofo = '您的基础代谢率：{}大卡\n'.format(bmr)#\n可以换行，保证美观
            print(info)
            print(fofo)
            f.write(info)
            f.write(fofo)#每个写入一一对应
        else:
            print('暂不支持该性别')
    except ValueError:#数值的错误
        print('请输入正确的信息!')
    except ImportError:#不完整错误
        print('输入的信息过少！')
    except:#其他错误
        print('程序异常！')
    print()
    y_or_n = input('是否退出程序（y/n）？')
f.close()